package com.qianying.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qianying.comment.CommonResult;
import com.qianying.dto.CustomerInfoDTO;
import com.qianying.entity.CustomerInfo;

import java.util.Map;
import java.util.HashMap;

public interface CustomerInfoService extends IService<CustomerInfo> {
    

    /**
     * 新增客户信息
     *
     * @param dto 客户信息DTO
     * @return 客户ID
     */
    CommonResult<?> addCustomer(CustomerInfoDTO dto);

    /**
     * 根据ID修改客户信息
     *
     * @param dto 客户信息DTO
     * @return 是否成功
     */
    CommonResult<?> updateCustomer(CustomerInfoDTO dto);

    /**
     * 根据Id删除用户信息
     *
     * @param id 客户ID
     */
    public CommonResult<?> deleteCustomerById(Long id);

    /**
     * 获取所有用户信息
     */
    public CommonResult<?> getAllCustomers(Long province, Long city, Long district);

    /**
     * 获取所有客户ID与名称的映射Map
     * 包含系统中所有客户记录，键为客户ID，值为客户名称
     *
     * @return 全量客户ID-名称映射Map
     */
    public Map<Long, String> getAllCustomerIdNameMap();

}